package com.atguigu.Spring5demo3.service;/*
@author joker
@create 2022-03-19 16:15
untitled
*/

import com.atguigu.Spring5demo3.dao.UserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.annotation.Resource;

/**
 * 在注解里面value属性值可以不写,
 * 默认值是类名称,首字母小写
 * UserService -- userService
 */
@Component(value = "userService")//等价:<bean id="" class="">
public class UserService {
    /**定义dao类型属性,
    * 不需要添加set方法,
    * 添加注入属性注解@Autowired,这样你就不用创建对象了,虽然暂时不知道有什么用,但是就目前来看,是只有这些
    * @Autowired根据属性类型注入,加上个Qualifier就可以指定属性名称进行注入,这两个注解要配合使用*/
/*    @Autowired
    @Qualifier(value = "userDaoImpl1")*/
    //@Resource 根据类型进行注入
    //根据名称进行注入
    @Resource(name = "userDaoImpl1")
    private UserDao userdao;
    @Value("heiheihei")
    private String name;
    @Value("11")
    private int id;
    @Value("10.8555")
    private double ids;
    @Autowired
    @Qualifier(value = "userDaoImpl1")
    public UserDao userdao1;




    public void add() {
        System.out.println("service add......");
        System.out.println("service name ="+name);
        System.out.println("service id ="+id);
        System.out.println("service ids ="+ids);
        userdao.add();
        userdao1.add();
    }
}
